<?php
/**
 * Application level Controller
 *
 * This file is application-wide controller file. You can put all
 * application-wide controller-related methods here.
 *
 * CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
 * Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 *
 * Licensed under The MIT License
 * For full copyright and license information, please see the LICENSE.txt
 * Redistributions of files must retain the above copyright notice.
 *
 * @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
 * @link          http://cakephp.org CakePHP(tm) Project
 * @package       app.Controller
 * @since         CakePHP(tm) v 0.2.9
 * @license       http://www.opensource.org/licenses/mit-license.php MIT License
 */
App::uses('Controller', 'Controller');
/**
 * Application Controller
 *
 * Add your application-wide methods in the class below, your controllers
 * will inherit them.
 *
 * @package		app.Controller
 * @link		http://book.cakephp.org/2.0/en/controllers.html#the-app-controller
 */
class AppController extends Controller {

/*            
  */    
    public $components = array(
        'Session',
        'Auth' => array(           
            'authenticate' => array(
                'Form' => array('passwordHasher' => 'Custom', 'scope' => array('activo' => '1'))
                //'Form' => array('passwordHasher' => array('ClassName' => 'Simple', 'hashType' => 'sha256'))                
            ),
            'loginRedirect' => array(
                'controller' => 'mainmenus',
                'action' => 'index'
            ),
            'logoutRedirect' => array(
                'controller' => 'users',
                'action' => 'login'
            ),
            'authError' => 'Por favor regístrese para acceder a la página.',
            'loginError' => 'El usuario o clave ingresados son inválidos, por favor intente de nuevo.'
        )
    );
          
    public function beforeFilter() {
       $this->Auth->allow('login');
       $this->set('nombre_usuario', $this->Auth->user('nombre'));
       $this->set('cargo_usuario', $this->Auth->user('cargo'));
    }    

    public function isAuthorized($user) {
        // Here is where we should verify the role and give access based on role

        return true;
    }    
}

